home *** CD-ROM | disk | FTP | other *** search
/ The PC-SIG Library 9 / The PC-SIG Library on CD ROM - Ninth Edition.iso / 301_400 / DISK0324 / DISK0324.ZIP / TURBOTST.PAS < prev    next >
Pascal/Delphi Source File  |  1984-07-10  |  1KB  |  52 lines

  1. PROGRAM Turbo_Tester;
  2.  
  3.       {  Taken from SoftTalk: July 1984, page 5.   }
  4.       {  Typed in and modified by Jeff Firestone.  }
  5.  
  6. PROCEDURE Documentation;
  7. BEGIN
  8.   WRITELN;
  9.   WRITELN('This program tests Turbo Pascal version 2.0 to see whether your version');
  10.   WRITELN('is able to perform mathematics properly.  Early shipments of version 2.0');
  11.   WRITELN('contained a major bug in the floating point routines.  The bugs only are');
  12.   WRITELN('found on the standard $49.95 version of 2.0.  The more expensive 8087 co-');
  13.   WRITELN('processor version of 2.0 performed floating point math flawlessly.');
  14.   WRITELN;
  15. END;
  16.  
  17. PROCEDURE DoCalculation;
  18. VAR
  19.   a,b,c,d,e,f  : REAL;
  20.   indx         : INTEGER;
  21.   ch           : CHAR;
  22. BEGIN
  23.   a:= 0.0;
  24.   FOR indx:= 1 TO 100 DO
  25.   BEGIN
  26.     a:= a + 1.0;
  27.     b:= (a * a * a);
  28.     c:= (b / a);
  29.     d:= SQRT(c);
  30.     e:= (d - a);
  31.   END;
  32.  
  33.   WRITELN('The result should be e = 0.0000000');
  34.   WRITELN('The result is e = ', e:12:7); WRITELN;
  35.   WRITELN;
  36.   WRITELN('Now we expect f =    1.0000000');
  37.   a:= 2.0; b:= 1.0;
  38.   f:= (a - b);
  39.   WRITELN('The result is f = ',f:12:7);
  40.   WRITELN; WRITELN;
  41.   IF ((e = 0) and (f = 1)) THEN
  42.     WRITELN('Your Turbo Pascal version is OK')
  43.   ELSE
  44.     WRITELN('Your Turbo Pascal version is defective');
  45. END;
  46.  
  47.  
  48. BEGIN
  49.   Documentation;
  50.   DoCalculation;
  51. END.
  52.